User interface for multifunction device

ABSTRACT

A system implements a circular navigation paradigm that matches a physical input device to a graphical user interface (GUI). The GUI may be displayed on a personal navigation device, music player, or any other electronic device that employs a GUI. The match between the physical input device and the GUI facilitates ready understanding and intuitive interaction with the GUI by the device operator. The circular navigation paradigm may also extend over multiple screens within an application, and across multiple applications, to provide consistency of operation throughout the entire feature set of this device.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation-in-part of U.S. patent applicationSer. No. 11/779,152, filed Jul. 17, 2007, which claims the benefit ofpriority to U.S. Provisional Patent Application No. 60/839,488, filedAug. 22, 2006, both of which are hereby incorporated by reference.

BACKGROUND OF THE INVENTION

1. Technical Field

The present invention is directed to a user interface for amultifunction device such as, for example, a personal navigation devicehaving navigation and media functionality.

2. Related Art

Until recently, many consumer devices have been designed with a singleconsumer function in mind. For example, a multimedia player may bedesigned with particular detail given to its performance of multimediafunctions. Similarly, a geographical navigation device, such as a GPSsystem, may be designed with particular detail given to its performanceof geographical navigation functions. In each instance, the userinterface may be tailored to the functionality of the particular device.Since the functions of different devices may vary, the user interfacesfor the different devices also may significantly differ from oneanother. Users of multiple consumer devices may find these devicesdifficult to master since the user may need to learn the nuances of thevarious user interfaces.

As microelectronic manufacturers develop the ability to integrate morecapabilities into ever-decreasing integrated package sizes, consumerdevice manufacturers have attempted to integrate multiple consumerfunctions into single consumer devices/systems. Multimedia players andgeographical navigation devices, formerly existing as separate entities,may now be incorporated into a single system. However, merelyincorporating disparate user interfaces in a single system environmentmay prove difficult for the end user to comprehend and may impede theultimate usefulness of the multifunction system.

SUMMARY

A portable interface hub including an electronics hub body and adetachable cigarette lighter power stalk connectable with theelectronics hub body is set forth. A mating guide on the power stalk maybe removably connected with a mating slot on the hub body to allow asecure attachment of the hub body and power stalk. When the hub body andpower stalk are connected, a secondary power input connector on the hubbody may couple through a detachable power coupling to a primary powerconnector on the power stalk. Power from the cigarette lighter interfacemay flow from the power stalk to the hub body. The electronics hub bodymay also include a main control module interface and a media deviceinterface interconnected with the main control module interface. A mediadevice supplying audio/video content may be connected to the mediadevice interface and interconnected with a main control module throughthe portable interface hub.

A user interface system is set forth including a processor and a memorywith processor-executable instructions that detect an angular positionof a rotatable control, convert the angular position to a rotationalmovement, and analyze the rotational movement against a user interfacemapping for a screen of a graphical user interface. The user interfacemapping includes an angular transition threshold predetermined forradially arranged user interface elements on the screen of the graphicaluser interface. If the rotational movement exceeds the angulartransition threshold, then the system directs a display device to changehighlighting from a current radially arranged user interface element toa neighboring radially arranged user interface element in the directionof the rotational movement. A related computer readable medium is alsodisclosed.

Other systems, methods, features and advantages of the invention willbe, or will become, apparent to one with skill in the art uponexamination of the following figures and detailed description. It isintended that all such additional systems, methods, features andadvantages be included within this description, be within the scope ofthe invention, and be protected by the following claims.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention can be better understood with reference to the followingdrawings and description. The components in the figures are notnecessarily to scale, emphasis instead being placed upon illustratingthe principles of the invention. Moreover, in the figures, likereferenced numerals designate corresponding parts throughout thedifferent views.

FIG. 1 is a block diagram of one example of a multifunction system thatmay employ a multifunction user interface.

FIG. 2 is a perspective view of one manner in which the main moduleshown in FIG. 1 may be physically implemented.

FIG. 3 is a top plan view of one manner in which the interface hub shownin FIG. 1 may be physically implemented.

FIG. 4 is a perspective view of the external input module shown in FIG.1.

FIG. 5 is a plan view of the external input module shown in FIG. 4.

FIGS. 6 through 12 are directed to exemplary screen layouts that may beused to implement various user interfaces that are employed to interactwith the underlying functional applications executed by the main moduleof the system shown in FIG. 1.

FIG. 13 illustrates a screen layout that also may be used in connectionwith one or more portions of the user interface of the system shown inFIG. 1.

FIG. 14 illustrates one manner in which a source menu may be laid out.

FIG. 15 shows exemplary screen layouts that may provide user interactionwith the navigation application when the user activates the navigationbutton of the source menu shown in FIG. 14.

FIG. 16 shows exemplary screen layouts that may provide user interactionwith the navigation application when the user activates the navigationbutton of the source menu shown in FIG. 14 while the navigationapplication is engaged in activities associated with an active route.

FIG. 17 shows exemplary screen layouts that may provide user interactionwith a media application when the user activates the music button of thesource menu shown in FIG. 14 while the media application is engaged inactivities associated with playback of an audio file.

FIG. 18 shows an exemplary menu screen that may provide user interactionwith the media application when the user activates the music button ofthe source menu shown in FIG. 14 and where the media application failsto detect an audio file on the system.

FIG. 19 shows an exemplary screen layout that may be provided when theuser activates the settings button of the source menu shown in FIG. 14.

FIG. 20 illustrates how the navigation button, music button, and videobutton return the user to the last saved state in the navigationapplication, music application, and video application, respectively,when the buttons are actuated by the user.

FIG. 21 shows a plurality of screens that may be employed in connectionwith the navigation application when the navigation settings button ofthe source menu shown in FIG. 14 is actuated by the user.

FIG. 22 illustrates a place selection menu that may be provided to auser upon activation of the “plan a trip” button of the navigation menushown in FIG. 15.

FIG. 23 is a flow diagram illustrating one manner in which thenavigation interface may operate in response to user activation of theaddress button shown in FIG. 22.

FIG. 24 shows an exemplary set of screens that may be used to enter thestreet number and/or street name of a desired destination.

FIG. 25 shows an exemplary set of screens that may be used to select acity of a desired destination.

FIG. 26 shows an exemplary set of screens that may be used to select astate of a desired destination.

FIG. 27 shows an exemplary set of menus that may be used to enter theZIP code of the desired destination.

FIG. 28 shows a sequence of screens that may be invoked when the useractuates the “place” button shown in FIG. 22.

FIG. 29 shows an exemplary place category selector screen sequence.

FIG. 30 shows a plurality of screens that may be used to enter adestination based on its place name.

FIG. 31 shows a plurality of screens that may be used in connection withan exemplary intersection search when the intersection button of theplace selection menu shown in FIG. 22 is actuated by the user.

FIG. 32 shows a plurality of screens that may be invoked when the useractuates the saved places button of the place selection menu shown inFIG. 22.

FIG. 33 shows one manner in which the user may select and save thedefault home location.

FIG. 34 shows a plurality of screens that may be employed when the useractuates the delete button shown in FIG. 32 to delete a place from thesaved places list.

FIG. 35 shows a route options screen that may be displayed when the useractuates the route options button of the navigation menu.

FIG. 36 shows an exemplary map screen that may be presented to the userwhen the view route button of the route options menu shown in FIG. 35 isactuated.

FIG. 37 shows a plurality of screens that may be presented to the userwhen the view turn-by-turn button of the route options screen isactuated.

FIG. 38 shows a plurality of screens that may be presented to the userwhen the user actuates the add destination button of the route optionsscreen.

FIG. 39 shows one example of an overlay that may be used by thenavigation application to notify the user of upcoming turns.

FIG. 40 shows one example of a trip data screen that may be presented tothe user upon actuation of the menu button of the map screen shown inFIG. 36.

FIG. 41 shows a plurality of screens that may be used to alter theappearance of the screens presented to the user based on the ambientlight conditions.

FIG. 42 is a perspective view of the interface hub shown in FIG. 1.

FIG. 43 is a side view of the interface hub showing a detachable powerstalk.

FIG. 44 is a view of the interface hub and cigarette lighter power stalkshowing power connection ports.

FIG. 45 is a side view of the interface hub showing a connected powercable.

FIG. 46 is a block diagram of an exemplary interface hub.

FIG. 47 is a block diagram of an exemplary external input moduleconnected with a main control module.

FIG. 48 is an exemplary process of controlling the main module using theexternal input module.

FIG. 49 shows an example user interface layout with physicalcorrespondence to an external input module.

FIG. 50 shows a cross-section view of the interface hub and cigarettelighter power stalk.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

FIG. 1 is a block diagram of one example of a system 100 that may employa multifunction user interface. In this example, the system 100 mayinclude geographical navigation functionality as well as media storageand/or playback functionality integrated into a main module 105. System100 also may include an optional interface hub 110 and an optionalexternal input module 115. Interface hub 110 and external input module115 provide further system functionality that may be useful when thesystem 100 is installed in a vehicle.

Main module 105 may be implemented as an assembly that is secured at afixed location, as an assembly that is readily mounted to and detachedfrom an assembly mount, and/or as a completely portable assembly that isintegrated into a single housing without reference to an assembly mount.In each instance, main module 105 may be implemented as a completesystem having standalone media and GPS functionality. This functionalitymay be enhanced when the main module 105 is releasably attached to anassembly mount in a system configuration that includes the interface hub110 and/or the external input module 115.

It will be recognized that main module 105 may be implemented in a widevariety of manners to execute the user interface described in specificdetail below. In the exemplary system shown in FIG. 1, main module 105may include a central processor 120 that executes programming associatedwith an input module 125, a display module 130, a GPS module 135, and amedia module 140. The circuitry of the central processor 120 may bebased on a number of different processor types, such as one or more ofthe processors available from Centrality® of Redwood City, Calif. Theinput module 125 and the display module 130 facilitate user interactionwith other portions of the main module 105 by allowing, for example, theuser to select menu entries, input data, and the like, in response tomenus, prompts, data fields, and the like provided on a display of thedisplay module 130. Some such menus, prompts, data field identification,and the like also may be provided audibly using, for example, the mediamodule 140. The input module 125 may include pushbutton switches,touchscreen areas on a touchscreen of display module 130, or acombination of both. The use of a touchscreen display to implement boththe input module 125 and display module 130 assists in rendering themain module 105 compact and portable and, further, may contribute to theability of the end-user to master the functions provided by the mainmodule 105.

The GPS module 135 may include those components that are used toimplement the various functions associated with a geographicalnavigation device. Such functions may include: 1) ascertaining ageographical destination and/or location by address, intersection, placename, or place type; 2) guiding the user to a defined destination; 3)simulating a trip from first location to second location; and/or 4)finding information in the context of a given location. The specificallocation of the resources of the main module 105 used to implement thegeographical navigation functions are not particularly pertinent to theoverall operation of the system 100. As such, a majority of thegeographical navigation functions may be implemented by the centralprocessor 120, by the GPS module 135, or divided between them in anequal or unequal manner. Additionally, many of the functions associatedwith the geographical navigation operations associated with main module105 may be implemented by the input module 125 and/or display module130.

The media module 140 may include components that are used to implementthe various functions associated with a media device. Such functions mayinclude: 1) providing internal storage for media (audio and/or video);2) providing access to removable and/or external storage for media; 3)locating media on storage for playback; and/or 4) controlling mediaplayback. The media module 140 may include an audio module 142 forstorage, playback, and/or control of audio media, such as music, and avideo module 144 for storage, playback, and/or control of video media.The media module 140 may playback audio media through self-containedspeaker and/or headphone circuitry. In the illustrated example, mainmodule 105 may provide audio and/or video output to a first playbackzone 150, which may be integrated into the main module 105 or formed asa separate component. Similarly, media module 140 may playback videomedia on display module 130. Still further, media module 140 mayplayback video media provided from an external source, such as a DVDplayer, iPod®, or the like.

As with the geographical navigation functions, the specific allocationof the resources of the main module 105 used to implement the mediafunctions are not particularly pertinent to the overall operation of thesystem 100. As such, a majority of the media functions may beimplemented by the central processor 120, by the media module 140, ordivided between them in an equal or unequal manner. Additionally,functions associated with the media operations of the main module 105may be implemented by the input module 125 and/or display module 130.

Interface hub 110 may include components that extend the functionalityof the main module 105. For example, interface hub 110 may include afurther media module 155. The further media module 155 may provideadditional media storage space and playback video and/or audio through asecond media zone 160 under the control of the main module 105. A mediadevice interface 165 may be provided in the interface hub 110 tofacilitate use of one or more supplemental media devices 170 with themain module 105. Such supplemental media devices 170 may include, forexample, MP3 players, iPod® devices, satellite radios, and the like. AnFM modulator 175 also may be included in the interface hub 110 tomodulate any of the audio signals of system 100 to an RF frequencysuitable for reception by the radio 180 of the vehicle. If desired, theoutput of the FM modulator 175 may be filtered through an antennacontroller 185 to limit undesirable retransmission of the modulatedsignal over antenna 190.

When configured for installation in a vehicle, external input module 115may be mountable at a first location within the vehicle cabin formanipulation by the user. The main module 105 may be securely mounted orremovably docked at a second location within the vehicle cabin. Forexample, the external input module 115 may be mounted on a consolebetween the driver's seat and the front passenger seat of the vehicle,while the main module 105 may be mounted in or on the dashboard of thevehicle. This allows the user to manipulate the external input module115 and observe the display of the main module 105 with a minimal amountof distraction. Although the interconnections between the external inputmodule 115 and of the main module 105 may be wired connections, suchconnections may be replaced by one or more wireless connections, such asinfrared connections, Bluetooth connections, etc. In operation, both theexternal input module 115 and input module 125 may be concurrentlyactive to facilitate user input from either.

FIG. 2 is a perspective view of one manner in which the main module 105shown in FIG. 1 may be physically implemented. In this example, mainmodule 105 includes a housing 205 having a front portion with an openingdefined by a bezel 210. Bezel 210 is disposed about the periphery of anelectronic display 215, such as a touchscreen display. A mounting stem220 may extend to engage housing 205 to facilitate mounting of the mainmodule 105 within the vehicle cabin. Depending on the desiredimplementation, main module 105 and mounting stem 220 may includecooperating connectors to facilitate connection of electrical signalsbetween the main module 105 and other components of the system 100, suchas, for example, interface hub 110, external input module 115,components of the first media playback zone 150, and the like. One ormore cables 225 proceed from the housing 205 for connection to suchother system components.

FIG. 3 is a top plan view of one manner in which the interface hub 110shown in FIG. 1 may be physically implemented. In this example, theinterface hub 110 includes a body portion 305 that may enclose theelectronics of the interface hub 110. Mounting tabs 307 may extend fromthe body portion and may be used to mount the interface hub at a fixedlocation in the vehicle. One or more conductive lines 309 may beprovided to connect the interface hub 110 to other components of thesystem 100.

A power stalk 310 having positive and negative power terminals 315 and320 extends from the body portion 305 and may be used to engage acorresponding power opening, such as a cigarette lighter opening of thevehicle. The power received through stalk 310 may be used to power theelectronics of the interface hub 110, main module 105, and externalinput module 115. If the main module 105 is powered with a rechargeablebattery, the power provided through stalk 310 also may be used forrecharging purposes. Stalk 310 and body portion 305 may be constructedso that the stalk 310 is removable to allow the user to optionallysecure the interface hub 110 at a fixed location using the mounting tabs307. Otherwise, the interface hub 110 may be supported by the stalk 310when the stalk 310 is inserted into the corresponding power opening.

FIG. 4 is a perspective view of the external input module 115 shown inFIG. 1. As illustrated, the external input module 115 is in the form ofa generally circular housing 405 having a face portion 410 and a rearportion 415. A mounting stem 420 extends from the rear portion 415 ofthe housing 405 to facilitate mounting of the external input module 115in the vehicle cabin.

The external input module 115 includes a number of components that allowa user to interact with system 100. In the illustrated example, theexternal input module 115 may include a plurality of user selectablebuttons 425, 426, 427, and 428, are disposed radially about a first axis430 of the generally circular housing 405. A potentiometer control 435also may be provided. Potentiometer control 435 may be disposed forrotational movement about an axis of the housing 405, such as axis 430,although other relative orientations for the potentiometer control 435may be employed. A central select button 440 may be disposed proximate acentral area of the front portion 410.

Potentiometer control 435 may be rotated about axis 430 in a clockwisedirection and/or counterclockwise direction. The rotation of thepotentiometer control 435 may be continuous in each direction.Alternatively, the potentiometer control 435 may have limited rotationalmotion in each direction. The output of the potentiometer control 435may be provided to the input of an analog-to-digital converter, wherethe digital value corresponds to the position of the potentiometercontrol 435 and the rate of change of the digital value indicates howquickly the user rotates the control 435.

FIG. 5 is a plan view of the external input module 115 shown in FIG. 4.The function(s) executed by a particular button will often depend on thecontext in which it is activated, such as the state of system 100 at thetime of activation. Each of the buttons 425, 426, 427, and 428 may havea primary function, a secondary function, a tertiary function, and thelike. Further, these functions may vary depending on which interface isprovided by the main module 105 to the user at a given time. Forexample, buttons 426 and 428 may be used as track selection buttons whenthe main module 105 provides the user with a screen from the audio mediainterface. Alternatively, or in addition, rotation of the potentiometercontrol 435 may be used to scroll through a list of audio media, withactivation of the switch 440 providing selection of an audio media filefrom the displayed list.

There are a variety of manners in which activation of the variousswitches and potentiometer control may be detected in system 100. In oneexample, the central processor 120 may be responsive to interrupts thatare generated when the buttons are pressed and/or the potentiometercontrol is rotated. Which button has been pressed may be determined bychecking the buttons upon occurrence of the interrupt and storing datacorresponding to the interrupt for handling. Polling of the buttons andcontrol potentiometer also may be employed.

The user interface used by system 100 to facilitate interaction betweenthe user and the application functions may be presented in a number ofdifferent manners. For example, the user interface described below mayemploy four types of screens: menu screens, wizard screens, informationscreens, and action screens. Menu screens may be used to providepathways to data input wizard applications and to informational screens.Wizard screens may be used to provide data entry and pair down databasesearch results. Information screens may be used to providenon-interactive information to the user, and action screens may be usedto provide interactive information and entertainment.

FIGS. 6 through 12 are directed to exemplary screen layouts 600 that maybe used to implement various user interfaces that are employed tointeract with the underlying functional applications executed by themain module 105. In these examples, each screen layout 600 is comprisedof a plurality of buttons 605 and corresponding visual indicia 610, suchas alphanumeric characters, that may be used to identify the function(s)associated with each button 605. The buttons 605 may be selectedvirtually, as with a pointing/selection device, or directly as with atouchscreen. Selection also may be accomplished using voice activationin systems provided with voice recognition capabilities. The buttons 605may be disposed about the area of the screen 215 in a variety ofdifferent manners. For example, the buttons 605 of the illustratedscreen layouts 600 shown in FIGS. 6 through 12 have been selectivelydisposed about the screen 215 in a radial fashion to correspond to theradial nature of the specific construction of the external input module115 shown in FIG. 5.

Other buttons also may be provided on the screen layouts 600. Forexample, each screen layout 600 may include a title section 615. Visualindicia 620, such as alphanumeric characters, may be provided in thetitle section 615 to indicate the current operational context of thebuttons 605. A back button 625 may be provided for activation by theuser to direct the user interface software to display a prior screenlayout. Additionally, a source button 630 may be used to invoke displayof a source menu. Although the source button 630 in each of the examplesset forth below is presented as a touchscreen button, it also may beprovided as a hardware button that is manually actuated by the userapart from the screen. A source menu button 630 may be presented on aplurality of the screens of the navigation interface and media interfaceto provide ready access to the corresponding source menu (discussedbelow).

Still further, the operational context of an underlying user interfacemay be identified in a region such as 635 disposed between the backbutton 625 and source button 630. Region 635 may be used as an interfacetoggle button to direct the user interface software to store theoperational context of the currently displayed user interface and switchto the display of the current and/or stored operational context of theunderlying user interface. Using region 635 as a button thereby allowsthe user to switch between user interfaces corresponding to differentdevice functions. For example, activation of button 635 may be employedby the user to toggle between a screen layout of the navigation userinterface and a screen layout of the media user interface.

FIG. 13 illustrates a screen layout 1300 that also may be used inconnection with one or more portions of the user interface of system100. The screen layout 1300 is particularly suitable for use indisplaying and/or selecting database driven results. It is also suitablefor use in those instances in which concurrent display of all availableinformation and/or menu selections tends to crowd the screen 215. Incertain instances, the system 100 may display alphabetically ornumerically organized search results in the manner shown in FIG. 13. Theup and down arrows 1305 and 1310 on the side of the menu screen 1300 maybe used to page up and page down through multiple menu items and/orthrough multiple pages of information. If a selected item is highlightedand the user pages up or down, the first item of the newly drawn pagemay be highlighted. A scroll indicator 1303 may be used to indicatewhere the currently displayed page is relative to the entire list ofmenu items.

In the example shown in FIG. 13, the screen layout 1300 is adapted toimplement a video list screen. The fact that the screen layout 1300 isassociated with selection of a video file is indicated by the word“video” in the title section 1315 of the screen layout 1300. A pluralityof buttons 1320 are provided for user selection of a particular videofile. Visual indicia 1325, such as alphanumeric characters, may be usedto identify the video file associated with a particular button 1320. Asabove, the screen layout 1300 may be provided with a source button 630.Further, region 635 may be used as a button to allow the user to switchbetween user interfaces that correspond to different device functions.

FIG. 14 illustrates one manner in which the source menu 1400 may be laidout. Source menu 1400 may be implemented as a pop-up display that sitsatop any current screen when the source button 630 is activated. Fromthe source menu 1400, the user may access the user interfaces associatedwith the various applications executed by the system 100. In theillustrated example, the source menu 1400 allows the user to accessinterfaces associated with three applications as well as an interfaceassociated with setting the user selectable options. To this end, thesource menu 1400 includes a navigation button 1405, a music button 1410,a video button 1415, and a settings button 1420.

The user interfaces associated with each of the primary sections(Navigation, Audio, Video, Settings) may have consistent colored outerglows and button down states. For example, the navigation section may beblue, the audio section may be red, the video section may be green, andthe settings section may be gray. These colors may correspond to thecolors used to invoke the respective interface on the source menu 1400.

The specific screen layout that is displayed upon activation of one ofthe buttons 1405, 1410, 1415, or 1420, may be dependent on the priorsaved state of the application associated with the button. When a buttonis actuated for the first time or when a prior saved state does notexist for the selected application, then activation of one of thebuttons may result in the display of a top/main menu associated with theselected application. These top/main menus may include: Navigation—noactive route; Navigation—with active route; Audio—with media present;Audio—no media is present; Video; and Settings.

Navigation—No active route—FIG. 15 shows exemplary screen layouts thatmay be provided to interact with the navigation application on screen215 when the user activates the navigation button 1405, but no activeroute has been programmed into the navigation application. Under suchcircumstances, a 2-item navigation menu 1500 may be displayed. Thenavigation menu 1500 may include a “map” button 1505 that may be used toswitch between this 2-item screen 1500 and a map screen 1510 thatindicates the current position of the system 100 as calculated by thenavigation application. A “menu” or “back” button 1515 may be used toswitch back from the map screen 1510 to the navigation menu screen 1500.

Navigation—With active route—FIG. 16 shows exemplary screen layouts thatmay be provided to interact with the navigation application on screen215 when the user activates the navigation button 1405 while thenavigation application is engaged in activities associated with anactive route. Under such circumstances, a 4-item navigation menu 1600may be displayed. The navigation menu 1600 may include a “map” button1605 that may be used to switch between this 4-item screen 1600 and amap screen 1610. The map screen 1610 may be used to display routinginformation provided by of the navigation application. A “menu” or“back” button 1615 may be used to switch back from the map screen 1610to the navigation menu screen 1600.

Audio—with media present—FIG. 17 shows exemplary screen layouts that maybe provided to interact with a media application on screen 215 when theuser activates the music button 1410 while the media application isengaged in activities associated with playback of an audio file. Undersuch circumstances, a playback control screen 1700 may be displayed thatidentifies the audio file currently playing. The playback control screen1700 may include a play/pause button 1705, a fast forward/next trackbutton 1710, and a rewind/previous track button 1715. Additionally, theplayback control screen 1700 may include a “menu” button 1720 or thelike that may be used to switch between the playback control screen 1700and an audio locator screen 1725. The audio locator screen 1725 may beused to locate audio media by, for example, artist, album, genre,playlist, and/or song name. Such location information may be providedusing the media application. A “menu” or “back” button 1730 may be usedto switch back from the audio locator menu screen 1725 to the playbackcontrol screen 1700.

Audio—no media present—FIG. 18 shows an exemplary menu screen that maybe provided on screen 215 to interact with the media application whenthe user activates the music button 1410 and where the media applicationfails to detect an audio file on system 100. Under such circumstances, ano media detected screen 1800 may be displayed that uses information inthe title bar 1805 to indicate the absence of audio media files. Tomaintain a consistent look, screen layout 1800 may maintain theplay/pause button 1705, the fast forward/next track button 1710, and therewind/previous track button 1715 found on the playback control screen1700.

FIG. 19 shows an exemplary screen layout that may be provided on screen215 when the user activates the settings button 1420 of the source menu1400. In this example, the activation of the settings button 1420directs system 100 to present the user with a main settings menu 1900through which the user may interact with a settings application. Themain settings menu 1900 may provide a plurality of buttons that may beactivated to access system options that may be set and/or changed by theuser. For example, the plurality of buttons may include a button 1905 toaccess brightness settings, a button 1910 to access color mode settings,a button 1915 to access language, a button 1920 to access volume mixersettings, a button 1925 to access FM broadcast settings associated withFM modulator 175, a button 1930 to access date/time settings, a button1935 to access battery charge settings, and a button 1940 to accessMTP/mass storage settings.

As shown in FIG. 20, the navigation, audio, and video sections maymaintain state when the user switches applications. The last screen theuser views when leaving a particular application is preferably the firstscreen the user views when returning to that application.

When the source button 630 is actuated from any of the screen layouts,the state of the current active screen layout and, if desired, thespecific state of the currently active application may be saved. Thecurrent active screen layout and, if desired, specific state of thecurrently active application are therefore available for subsequentaccess. Such subsequent access may include any changes made to the stateof the currently active application and/or current active screen layoutthat logically occurs over time as a result of the logical operation ofthe respective application.

The source menu 1400 with its corresponding menu selection buttons 1405,1410, 1415, and 1420, is also displayed to the user. As shown in FIG.20, user activation of the navigation button 1405 directs the navigationinterface at 2005 to display a screen layout corresponding to the lastsaved screen layout of the last saved state of the navigationapplication. If no such prior saved screen/state exists, the navigationinterface may display the default screen menu 1500 shown in FIG. 15.User activation of the music button 1410 directs the audio mediainterface at 2010 to display a screen layout corresponding to the lastsaved screen layout of the last saved state of the audio mediaapplication. If no such prior saved screen/state exists, the audio mediainterface may display the default screen menus shown in FIG. 17 or 18.User activation of the video button 1415 directs the video mediainterface at 2015 to display a screen layout corresponding to the lastsaved screen layout of the last saved state of the video mediaapplication. If no such prior saved screen/state exists, the video mediainterface may display one or more default screen menus similar to thoseshown in FIG. 17 or 18.

User activation of the settings button 1420 may function slightlydifferent than activation of buttons 1405, 1410, and 1415. Since thesettings application is not likely to be used on a frequent basis, useractivation of the settings button 1420 may direct the settings interfaceat 2020 to display a screen layout corresponding to the top settingsmenu, such as shown at 1900 of FIG. 19, as opposed to the last savedscreen layout of the last saved state of the settings application. Ifdesired, however, activation of the settings button 1420 may direct thesettings application to display a screen layout corresponding to thelast saved screen layout of the last saved state of the settingsapplication.

As shown in FIG. 15, a user may be presented with navigation menu 1500when the navigation button 1405 is activated. In the example illustratedin FIG. 15, the navigation menu 1500 includes a “plan a trip” button1520 and a “navigation settings” button 1525. If the system 100 iscurrently engaged in a navigating activity, the navigation menu 1600shown in FIG. 16 may be employed. The navigation menu 1600 may includean additional stop navigation button 1525 and a route options button1630.

FIG. 21 shows a plurality of screens that may be employed in connectionwith the navigation application when the navigation settings button 1525is actuated by the user. The plurality of screens may be used to allowthe user to view and calculate default navigation settings. Whichsettings are to be viewed and/or altered may be selected from a toplevel navigation settings interface screen 2100. These settings mayinclude, for example, items to avoid (avoidances) 2105, distance units2110 that are to be used by the navigation application, route priorityoptions 2115 that are to be used by the navigation application, and GPSstatus data 2120 received from the navigation application. Navigationinterface screens for avoidances 2125, distance unit selection 2130,route priority option selection 2135, and GPS status data display 2140are shown in FIG. 21 with corresponding links to the activating buttonof the navigation settings interface screen 2100. Each of the screens,or a subset thereof, may be provided with a source button 630 for accessto the source menu 1400.

FIG. 22 illustrates a place selection menu 2200 that may be provided toa user upon activation of the “plan a trip” button 1520 of thenavigation menu 1500. The place selection menu 2200 allows the user toindicate the manner in which a route and/or destination is to beprovided to the navigation application. To this end, the place selectionmenu 2200 may include an address button 2205 that may be used toinitiate the display of one or more subsequent screens that the user canuse to define a destination by its address, zip code, and/or city. Theuser also may initiate the display of one or more screens used to searchfor a destination by place name or place type using buttons 2210, 2225,and/or 2230. Still further, the user may initiate the display of one ormore screens used to recall an address from a list of recently inputdestinations or an address book using buttons 2235 and 2240,respectively. The display of one or more screens used to set a citycenter or intersection as the destination may be initiated throughactivation of buttons 2215 and 2220, respectively.

FIG. 23 is a flow diagram illustrating one manner in which thenavigation interface may operate in response to user activation of theaddress button 2205 shown in FIG. 22. In this example, addressdefinition for the destination may be executed by presenting a series ofnavigation screens having multiple choice questions and/or prompts thatnarrow down possible destinations. To this end, the user may bepresented with the state/zip code search options menu 2300 when theaddress button 2205 is actuated. The exemplary state/ZIP code searchoptions menu 2300 includes a default state selection button 2305, a ZIPcode option button 2310, and an “other state” option button 2315.

User activation of the default state selection button 2305 may directthe navigation user interface to display the street name/city searchoption menu 2320, which may be used to determine how the destinationaddress will be entered. The street name button 2325 invokes one or moremenus at 2330 that may be used to enter the street number and/or streetname of the desired destination. An exemplary set of screens that may beused to enter the street number and/or street name of the desireddestination is shown in FIG. 24. If a city is not defined in thissearch, the user may select the correct address in the correct city froma list provided from a search of an internal database of main module105. As shown in FIG. 24, the street name may be selected from a listprovided from the internal database. If a city is not defined in thesearch, the user may select the correct address in the correct city froma list provided from the internal database.

Once the street number and/or street name have been entered by the userthrough one or more menus at 2330, the user may be prompted to select acity using one or more menus at 2335. An exemplary set of screens thatmay be used to select a city is shown in FIG. 25. The same or similarmenus may be invoked upon actuation of the “city” button 2370, afterwhich one or more menus identical or similar to those at 2330 may bedisplayed.

In the example shown in FIG. 25, there is an “all cities in ‘X’” option,where X is populated with the selected state. If the user has recentlyinput a city name, then the top level menu screen of the screen sequence2335 may be displayed with the recent city shown as a selectable option.Otherwise, the user may enter the name of the desired city by keying itinto, for example, a touch pad keyboard. Alternatively, or in addition,the user may select the city name from a list.

A confirmation menu screen 2340 may be provided to allow the user toconfirm that the destination information has been properly entered. Fromthe confirmation menu screen 2340, the user may initiate calculation ofrouting information by the navigation application by activating the “go”button 2345. A map from the current location to the selected destinationmay be displayed through user activation of the “view map” button 2350.Travel along the calculated route may be simulated in response to useractivation of the “simulate” button 2355. Still further, the destinationmay be saved for subsequent use through user activation of the “save”button 2360.

With reference again to menu screen 2300, user activation of the “otherstate” button 2315 may invoke a sequence of one or more menu screensassociated with state selection 2365. An exemplary set of screens thatmay be used to enter the state of the desired destination is shown inFIG. 26. Upon selection of a state, menu screen 2320 may be displayed.Activation of the “zip code” button 2310 may invoke a sequence of one ormore menu screens associated with zip code selection 2375. An exemplaryset of menus that may be used to enter the ZIP code of the desireddestination is shown in FIG. 27.

FIG. 28 shows a sequence of screens that may be invoked when the useractuates the “place” button 2210 shown in FIG. 22. Using these screens,the user may select a destination from a variety of destination types.To this end, the user is presented with a “find a place” options menuscreen 2800. Screen 2800 may provide, for example, a “nearby” button2805 to invoke one or more further screens to select a place of interestthat is close to the current location of the system 100, a “neardestination” button 2810 to invoke one or more further screens used inselecting a place of interest that is close to the programmeddestination location, and an “in another city” button 2815 to invoke oneor more for the screens used in selecting a place of interest that is inanother city. If the “in another city” button 2815 is selected, the usermay be prompted to select a state, a city, and then to search by name orcategory. If either the “nearby” button 2805 or “near destination”button 2810 is selected, the user may be prompted to search by category(place category selector) or name spelling (place name selector) asshown at menu 2820.

A sequence of place category selector menus may permit the user tosearch through predefined categories of points of interest pursuant toselection of the destination location. An exemplary place categoryselector screen sequence is shown in FIG. 29. In this example, the usermay be prompted to select a category (e.g., such as restaurants) usingmenu layout 2905, select a type within the category (e.g., such asrestaurant type) using menu layout 2910, select a specific restaurant inthe type category using menu layout 2915, and confirm the address usingmenu layout 2920. Examples of place groupings and indented sub-groupingsthat may be employed in system 100 are set forth below. Sub-group listsare displayed when the user selects a major group.

-   Restaurants and Food    -   All Food Types    -   Complete list of all food categories    -   Wineries-   Hotels-   Parking-   Gas Stations-   Auto Services-   Transit    -   Airports    -   Boating/Marinas    -   Ground Transportation    -   Rest Areas-   ATMs & Banks-   Shopping    -   Shops & Retailers    -   Grocery & Liquor Stores    -   Home & Garden-   Entertainment    -   Conventions Centers    -   Sports Complexes    -   Movie Theaters    -   Nightlife-   Education    -   Libraries    -   Museums    -   Schools & Universities-   Sports-   Parks & Recreation-   Emergency Services-   Government Offices-   Local Community-   Neighborhoods (a.k.a. Named Places)-   Places of Worship

FIG. 30 shows a plurality of screens that may be used to enter adestination based on its place name. To this end, place name entryscreen 3005 may be displayed when the place button 2210 of placeselection menu 2200 is actuated by the user. The place name entry screen3005 may include a keyboard 3010 that is used to enter alphanumericcharacters that are used to initiate a word search for the place name.Once at least a partial entry of the place name is made by the user, theuser may actuate the next key 3015 to display a place name selectionscreen 3020, which may include a list of places that begin with thealphanumeric characters entered by the user on screen 3005. After theuser selects the place name of the desired destination, a confirmationscreen 3025 may be displayed that allows the user to begin navigationrouting, view a map to the selected destination, simulate travel to thedesired destination, and/or save the selected destination for later use.

The speller screens shown in the examples above may be used to enterletters, numbers, and other characters into a search entry field. Thespeller screens may assist the user in selection of an entry bydynamically graying out letters and numbers that are not available inthe remaining database search results. When the list of possible entriesis less than a predetermined number, the system may display a resultslist without user intervention. The smart speller also may display thenumber of possible entries remaining so that a user may decide if theywould like jump view a results list. If the smart speller applicationcannot update the screen with the correct grayed out letters in lessthan a predetermined time, then the smart speller application may bedisabled and the user may enter any character.

If the user enters partial or incomplete data, the system 100 maydisplay a list of possible results. For example, if the user enters theletters “Bee” for a street name and selects the Next button, the systemmay present the user with a list of streets that begin with the letters“bee” (such as Beech, Beech Knoll, and Beethoven).

The smart speller screens may be toggled through in order bysuccessively selecting the Numbers, Character, and Letters buttons onthe respective screens. Exemplary letter and number entry screens areshown in FIG. 24. The special characters needed to complete data entryfor all of the languages used in the system may populate the multipleentry keys once a final set of languages has been selected for use bythe user.

With reference to FIG. 22, the place selection menu 2200 may includesuch other buttons as the city center button 2215, the restaurantsbutton 2225, the gas stations button 2230, the recent places button2235, the saved places button 2240, and the like. The city center button2215 may permit the user to jump to a list of cities ordered bynearest-location-first. The restaurants button 2225 may permit the userto jump to a search of local restaurants. The system 100 may display an“All Food” category followed by an alphabetical list of other foodcategories. The gas stations button 2230 may permit the user to jump toa list of gas stations ordered, for example, is to bynearest-location-first. The recent places button 2235 may provide a listof, for example, the 20 most recently input destinations and places withthe last input destination provided at the top of the list. If thedestination is a place in the place name database of the system 100 thenthe name may be displayed instead of the street number and name.

A plurality of screens that may be used in connection with an exemplaryintersection search when the intersection button 2220 of the placeselection menu 2200 is actuated by the user is shown in FIG. 31. In thisexample, the user may be prompted to enter the state in which theintersection is located using a screen layout such as the one shown at3105. If the desired state is not shown as an available selection onscreen layout 3105, the other state button 3110 may be actuated toinitiate one or more screens for state selection, such as those shown at2365 of FIG. 23. Navigation interface screens 3115 and 3120 illustrateone manner of selecting the desired first street name while navigationinterface screens 3125 and 3130 illustrate one manner of selecting thedesired second street name. If the intersection exists in more than onecity, the user may be prompted to select the desired city using a cityselection menu such as the one shown at screen 3135. A confirmationscreen may be displayed at 3140 that allows the user to begin navigationrouting, view a map to the selected destination, simulate travel to thedesired destination, and/or save the selected destination for later use.If the user saves the selected destination, the destination may, ifdesired, be saved for subsequent selection using the saved places button2240 of the place selection menu 2200.

A plurality of screens that may be invoked when the user actuates thesaved places button 2240 of the place selection menu 2200 is shown inFIG. 32. As shown, actuation of the saved places button 2240 may resultin the display of the saved places screen 3205. In this example, thesaved places screen 3205 provides a list of destinations and places thathave been saved by the user. The user can save addresses and places fromthe confirmation screens that are invoked during other destinationselection processes. The saved places list may begin with “Home” andhave a default ordering of unnamed places, such as places that aredesignated solely by addresses beginning with a house number. Placesthat are designated solely by addresses may be followed by named places.Actuation of the “Home” button 3210 directs the navigation interface toa confirmation screen showing the user's predefined home location. Ifthe user has not defined a “Home” location, the navigation interface maypresent the user with one or more screens 3213 that may be used todesignate the desired home location. The “Home” button 3210 may be adifferent color than the other list buttons.

The list ordering after the “Home” button 3210 may be changed by theuser through actuation of the “Sort by Street Name” button 3215. If theuser chooses to reorder the list by street name then the “Sort by StreetName” button 3215 may be replaced with a “Sort by Place Name” button.The user can delete a saved place in the confirmation screen afterselecting the location using the saved places screen 3205. To this end,the user may actuate the delete button 3220 of the confirmation screen3225 after selecting the saved location that is to be deleted.

The user may select and save the default home location in the mannershown in FIG. 33. In this example, the user may select a state using oneor more state selector screens 3305, a city using one or more cityselector screens 3310, and a street and street number using one or morenumber/street selector screens 3315. Once the user has provided thedesired information to the system 100, a confirmation screen, such asthe one shown at 3320, may be provided to the user. Using theconfirmation screen 3320, the user may save the home location throughactivation of the save button 3325 and/or view a map that includes thehome location through activation of the view map button 3330.

FIG. 34 shows a plurality of screens that may be employed when the useractuates the delete button 3220 to delete a place from the saved placeslist. As illustrated, the navigation interface may display a pop-up menu3405 that prompts the user to confirm deletion of the displayed savedplace. To this end, the pop-up menu 3405 may include a delete button3410 and a cancel button 3415. Activation of the cancel button 3415returns the user to the address confirmation screen 3225 and cancels theplace deletion process. Final deletion of the saved place isaccomplished when the user activates the delete key 3410. When thedelete key 3410 has been activated, the displayed saved place is removedfrom the system 100 and a confirmation to this effect is provided on aninformational pop-up screen 3420, which may be displayed for apredetermined limited time, such as, for example, three seconds.

When the user actuates the route options button 1630 of the navigationmenu 1600, a route options screen such as the one shown at 3505 of FIG.35 may be displayed. The route options screen 3505 may provide the usernon-recurring optional changes to any currently entered route. The routeoptions button 1630 may be available from the navigation menu 1600whenever the navigation application is engaged in conducting anavigation function with respect to a destination that has been enteredby the user. The route options menu 3505 may include a view route button3510, a view turn-by turn button 3515, a detour next turn button 3520,and an add a destination button 3525.

A map screen, such as the one shown at 3605 of FIG. 36, may be presentedto the user when the view route button 3510 is actuated. The specificmanner in which the map is displayed, such as whether it is displayed asa 2-D map, a 3-D map, north-up, and the like, may be provided in system100 as user selectable options. In the example shown in FIG. 36, the mapscreen 3605 is presented as a North Up, 2D map having the current routehighlighted. The destination may be marked with an icon (not shown). Ifmultiple destinations have been entered, each destination may be markedwith an icon.

The map screen 3605 may display the following information usinganti-aliased fonts, graphics, and some alpha-blended overlays:

-   -   Present Street (optionally displayed at 635 if no media is        currently being played back)    -   Upcoming Maneuver Graphic (3610)    -   Distance to Upcoming Maneuver (3615)    -   Maneuver Point Street Name (3620) including, if desired, exit        number and/or exit name for highway exits    -   Discrete zoom in/out controls (3625)    -   Time to Destination (3630)    -   Distance to Destination (3635)    -   Highlighted Route    -   Compass (3640)        Additionally, the map screen may display the following under the        appropriate circumstances:    -   No GPS Signal Indicator    -   Low Battery Indicator    -   Muted speaker icon    -   Car icon

The car icon may be centered horizontally at the bottom of the areacontaining the map. If the user switches between a regular map view anda detailed map view, the system may re-center the entire map inside theselected screen format. The map shown in the map screen 3605 may havethree user selectable map orientation settings: 2.5D) heading up, 2Dheading up and 2D north up. These settings may be toggled through bypressing the compass button 3640. The user may access the current trip'sinformation screen by pressing the menu button 3645. If there is noroute active then this area may display the current speed.

A detailed map screen may be accessed and exited when the user pressesthe upcoming maneuver graphic 3610. The detailed map screen may besimilar to the primary map screen except that the upcoming maneuverinformation may be larger and may include an icon overlaid onto adisplay of the actual upcoming maneuver (i.e., shown as a heading up 2Dmap). The distance to maneuver, time to destination, and distance todestination may be reformatted to accommodate the larger graphic.

When the media application is playing an audio file, the track name andartist name of the current audio file may be displayed as a music trackbutton 635 on the map screen 3605. The music track button 635 may beactuated by the user to display a user interface screen associated withthe audio application. For example, actuation of the music track button635 may result in the display of the playback control screen 1700 shownin FIG. 17 for interface with the audio application.

FIG. 37 shows a plurality of screens that may be presented to the userwhen the view turn-by-turn button 3515 of the screen 3505 is actuated.As shown, actuation of the button 3515 may result in the presentation ofa route list screen 3705 to the user. The route list screen 3705 mayinclude a list of maneuvers needed to get from the current location tothe final destination. Each maneuver description may be preceded with acorresponding maneuver icon 3710. If there are multiple destinationsthen each destination is preceded with a corresponding destination icon3715. If the user actuates one of the buttons corresponding to amaneuver, they may be presented with a map of the maneuver as shown atmaneuver screen 3720. Using the “avoid this road” button 3725 of themaneuver screen 3720, the user may choose to avoid the road(s) of theselected maneuver. Users may be asked for avoidance confirmation using apop-up screen as shown at the screen 3730.

FIG. 38 shows a plurality of screens that may be presented to the userwhen the user actuates the add destination button 3525 of the routeoptions screen 3505. Prior to the display of the confirm furtherdestination screen 3805, the user may enter the further destination inthe manner associated with any of the selections from the placeselection menu 2200. When the user is finished entering the data for theadditional location, the confirm further destination screen 3805 may bedisplayed. Screen 3805 may be provided with an add to route button 3810to add the further destination to the current route. The user also mayview a map that includes the further destination by actuating the viewmap button 3815 on screen 3805. If the further destination is added tothe current route, an acknowledgment screen 3820 may be displayed toindicate that the navigation application is recalculating the currentrouting information to include the further destination.

Actuation of the detour next turn button 3520 of the route optionsscreen 3505 may be used to direct the navigation application torecalculate the route in a manner that avoids the next maneuver. Ifdesired, an acknowledgment screen such as screen 3820 of FIG. 38 may bedisplayed to indicate that the navigation application is recalculatingthe current routing information to avoid the next maneuver.

The media application may employ a plurality of screens that areimplemented in accordance with the Centrality multimedia user interfacestandards to select audio and/or video files for playback, deletion,etc. In accordance with this user interface standard, the mediaapplication may search for and present interface screens based onwhether the media application is in artist mode, album mode, genre mode,playlist mode, and/or song mode. In artist mode, songs may be listed onan interface screen alphabetically and grouped by artist name. Anexemplary screen in artist mode is shown at 1725 of FIG. 17. In eachmode, the corresponding screen may include a plurality of buttons suchas those shown at 1735, 1740, 1745, 1750, and 1755 that allow the userto select the mode in which the media application is to operate.

In album mode, songs may be listed alphabetically on an interface screenin the order they came in on the album and, further, may be grouped byalbum. In genre mode songs may be listed alphabetically and grouped bygenre. Playlist mode may be available to the user if M3Us are detectedon the selected source. If this mode is available, songs are listed inthe order they were placed in the playlist. Songs mode may present theuser with a screen comprised of a single long list of all songsalphabetically organized by ID3 tag song name. Whether the various itemsof each of the modes is listed alphabetically, listed in reversealphabetical order, listed by increasing/decreasing date, listednumerically, or the like, may be selectable by the user as a default inthe initial settings, from one or more screens associated with theparticular mode, and/or from one or more screens generally associatedwith the media application.

Once the user has located the desired audio file using the selectedmode, the user may actuate a button corresponding to the audio file.Ultimately, the media application may present the user with the playbackcontrol screen 1700 showing information relating to the selected audiofile while concurrently executing playback of the file. If a file is notplayable, the system 100 may display a brief explanation as to why thefile is not playable for a predetermined amount of time at, for example,the portion of the screen normally reserved for the track title button.As the system 100 discovers unplayable files, the unplayable file willbe skipped. Unplayable files may be grayed out in the list screen andskipped over during playback.

If desired, the navigation application may notify the user of upcomingturns using an overlay such as the one shown at 3905 of FIG. 39. Theoverlay 3905 need not be displayed every time the navigation applicationprepares for an upcoming maneuver. Rather, display of the overlay 3905may be limited to the first and second to last time a maneuver isannounced. Overlay 3905 may be semi-transparent and show a graphiccorresponding to the next maneuver. The graphic may be displayed for apredetermined period of time before fading away. Further, if the userwants the pop-up to fade from the screen prior to the expiration of thepredetermined period of a time, the user may press anywhere on thescreen to promptly remove the overlay 3905 from the screen. Some or allof the buttons of the underlying screen 1700 may remain functional whilethe overlay 3905 is displayed.

FIG. 40 shows one example of a trip data screen 4005 that may bepresented to the user upon actuation of the menu button 3645 of the mapscreen 3605 shown in FIG. 36. In the trip data screen, the gray boxes4010 may be populated with alphabetic and/or numeric data.

The system 100 may have a light sensor that allows the user interfacesto automatically switch between a daylight mode and a night mode. Thisto change the graphics of one or more portions of the user interfacefrom a light set of graphics with black fonts to a dark set of graphicswith white fonts. The switch from day mode to night mode or night modeto day mode also may be triggered by location specific sunrise andsunset times provided by the GPS and navigation software. Further, theuser may turn off the automatic switch and set the system 100 to stay inday mode or night mode in the main system settings menu. Such selectionsmay be available from a mode screen 4105 such as the one shown in FIG.41. Examples of a day mode and a night mode are shown at 4110 and 4115,respectively, in FIG. 41.

A graphical user interface for use in connection with a multifunctiondevice has been disclosed. In one example, the multifunction deviceincludes navigation and media functionality. The graphical userinterface comprises a navigation interface, a media interface, and asource menu display. The navigation interface includes a plurality ofscreens that are adapted to facilitate interaction between a user and anavigation application of the device and has one or more navigationinterface states corresponding to the plurality of screens of thenavigation interface. The media interface includes a plurality ofscreens adapted to facilitate interaction between a user and a mediaapplication of the device and has one or more media interface statescorresponding to the plurality of screens of the media interface. Thesource menu includes at least a first button actuatable by the user toinvoke display of a screen corresponding to a previously storednavigation interface state, and at least a second button actuatable bythe user to invoke display of a screen corresponding to a previouslystored media interface state. There is at least one source buttondisposed for actuation on a plurality of screens of the navigationinterface and a plurality of screens of the media interface to invokedisplay of the source menu to the user. Actuation of the at least onesource button results in storage of a currently active interface state.In one example, one or more of the buttons of the interface are virtualbuttons.

FIG. 42 is a perspective view of the interface hub 110 shown in FIG. 1.The interface hub 110 includes an electronics hub body 4202 that mayenclose the electronics of the interface hub 110. A cigarette lighterpower stalk 4204 may be removably connected to the electronics hub body4202. The stalk 4204 may include a primary power connector 4206 forconnection with a cigarette lighter receptacle in a vehicle. The powerreceived through stalk 4204 may power the electronics of the interfacehub 110, a supplemental media device 170, an expansion device, a maincontrol module 105, or other components.

The interface hub 110 may also include interfaces to externalcomponents. The interfaces may include a media device interface 4208, anexpansion interface 4210, a main control module interface 4212, and anaudio/video line output 4214. A supplemental media device 170 may beconnected to the media device interface 4208, and may provide audioand/or video content. For example, the supplemental media device 170 mayinclude an MP3 player, an iPod® device, a Universal Serial Bus flashdrive, and other sources of content. The supplemental media device 170may be directly or indirectly connected to the media device interface4208, such as through a cable, converter, and/or plug adapter. The mediadevice interface 4208 may include a Universal Serial Bus port, aFirewire port, a proprietary connection, and/or other types ofinterfaces.

An expansion device may be connected to the expansion interface 4210,and may provide audio, video, and/or data content. Examples of theexpansion device include a satellite radio receiver, a personal digitalassistant, a cellular phone, and other devices. The expansion device maybe directly or indirectly connected to the expansion interface 4210. Forexample, a satellite radio adapter may be connected to the expansioninterface 4210 to allow display and control of a satellite radioreceiver. As another example, a Bluetooth cellular phone adapter may beconnected to the expansion interface 4210 to wirelessly control thecellular phone, display and select a phonebook, display a calleridentification, and perform other phone functions. The expansioninterface 4210 may include a Universal Serial Bus port, a Firewire port,a proprietary connection, and/or other types of interfaces.

A main control module 105 may be connected to the main control moduleinterface 4212. The main control module 105 may display information andaccept user input, as described previously, for example. In particular,the supplemental media device 170 may be in communication with the maincontrol module 105 through the interface hub 110. The media deviceinterface 4208 and/or the expansion interface 4210 may be interconnectedwith the main control module interface 4212 so that data and commandsmay be exchanged between the supplemental media device 170 and theexpansion device, and the main control module 105. The exchanged dataand commands may include audio and video content, control commands(e.g., play, stop, pause, track forward, track back, volume up/down,power on/off, or other commands), and other information. The maincontrol module interface 4212 may include a Universal Serial Bus port, aFirewire port, a proprietary connection, and/or other types ofinterfaces.

An external audio/video system, such as a vehicle radio system, may beconnected to the audio/video line output 4214. The external audio/videosystem may present the audio/video content provided from thesupplemental media device 170, the expansion device, and/or othercomponents through the audio/video line output 4214. The audio/videoline output 4214 may provide an analog audio/video signal that may betransmitted to the external audio/video system via a cable. In addition,an external wired frequency modulation (FM) adapter may be connected tothe audio/video line output 4214. The wired FM adapter provides a wiredFM connection between the interface hub 110 and the external audio/videosystem. Switching circuitry may sense if a cable is or is not connectedto the audio/video line output 4214. When the switching circuitry sensesno connected cable, the switching circuitry may route audio/videocontent to an FM modulator in the interface hub 110 for local FMtransmission (e.g., to a vehicle radio). The main control module 105 mayalso include an FM modulator for local FM transmission of audio/videocontent. Otherwise, the switching circuitry may route the audio/videocontent out the audio/video line output 4214.

FIG. 43 is a side view of the interface hub 110 showing the cigarettelighter power stalk 4204. The stalk 4204 is shown attached to andremoved from the electronics hub body 4202 on the top and bottom of FIG.43, respectively. In the example shown in FIG. 43, the stalk 4204includes a cigarette lighter section 4302 and an interface hub section4304. The interface hub section 4304 may conform to a portion of thecircumferential shape of the electronics hub body 4202 of the interfacehub 110. The interface hub section 4304 may thereby mate nearlyseamlessly with the interface hub 110 to provide an unexpectedly goodfit, yet maintain the flexibility of convenient detachment. As oneexample, the interface hub section 4304 may be a portion of thecircumference of a truncated cone, and may match a correspondinginterface hub body mating interface 4502 (FIGS. 44 and 45), such as amatching material gap in the interface hub 110.

FIG. 44 is a view of the interface hub 110 showing the stalk 4204removed and exposing a secondary power input connector 4402 on theelectronics hub body 4202. The secondary power input connector 4402 maybe adapted to interconnect with a detachable power coupling 4412. Thesecondary power input connector 4402 retains the detachable powercoupling 4412 to provide power from the cigarette lighter through theprimary input power connector 4206. The detachable power coupling 4412may be implemented with pins (e.g., spring loaded pins such as Pogopins), posts, male or female sockets or pins, or other couplings. Thesecondary power input connector 4402 may include power, ground, andaccessory connectors to allow a hardwired connection via a power cable4504 to a vehicle electrical system, as shown in FIG. 45, for example.The power cable 4504 may mate with a plug receptacle 4424 toelectrically connect the power, ground, and accessory connectors.

As noted above, the stalk 4204 may include an interface hub section 4304that may mate with a corresponding hub body mating interface 4502defined in or on the electronics hub body 4202. The body matinginterface 4502 may be a mirror image of the interface hub section 4304,such that the stalk 4204 may seamlessly be attached to the body 4202.Other shapes of the body mating interface and interface hub section maybe used.

The interface hub section 4304 may include opposed mating guides 4408and 4409 for insertion into corresponding mating interface slots 4422and 4420, respectively, on the body 4202. The mating guides 4408 and4409 and mating interface slots 4422 and 4420 may be shaped andpositioned to create a secure attachment between the interface hubsection 4304 and the body mating interface 4502. For example, the matingguides 4408 and 4409 and mating interface slots 4422 and 4420 may beL-shaped. The mating guides 4408 and 4409 may include positive locationguides, posts, ridges, lips, pins, locking tabs, and the like. Themating interface slots 4422 and 4420 may include slots or other positivelocation apertures.

In addition, the interface hub section 4304 may include a locking tab4416 that releasably connects with a groove 4418 on the hub body matinginterface 4502. Turning briefly to FIG. 50, the locking tab 4416 isshown locked into the groove 4418. The locking tab 4416 may flex anddeform when the interface hub section 4304 is attached or detached fromthe hub body mating interface 4502 so that the locking tab 4416 locksand unlocks from the groove 4418, respectively. Other locking mechanismsand shapes may also be used to ensure secure attachment of the stalk4204 and the body 4202. When the stalk 4204 and body 4202 are mated, thesecondary power input connector 4402 and the detachable power coupling4412 are connected, and power flows through the primary input powerconnector 4206 to the body 4202.

FIG. 46 is a block diagram of the interface hub 110. In this example,the interface hub 110 may include audio/video input interfaces,audio/video output interfaces, power connections, and an interface witha main control module 105. In particular, the interface hub 110 mayinclude a controller 4602 to interconnect the input interfaces, such asthe media device interface 4208 and the expansion interface 4210, withthe main control module interface 4212. The controller 4602 maycoordinate, convert, and process data and commands between the maincontrol module 105, the supplemental media device 170, and/or theexpansion device 4604. Thus, the controller may be a communicationscontroller (e.g., a serial bus controller) or a processor includinginput/output functionality. For example, the supplemental media device170 and/or the expansion device 4604 may present information on the maincontrol module 105. The main control module 105 may also be used toaccept user commands on a touchscreen or from an external input device,for example, to control the operation of the supplemental media device170 and/or the expansion device 4604.

The audio, video, or other content from the supplemental media device170 and/or the expansion device 4604 may be provided to an externalaudio/video system 4608, such as a vehicle radio. The externalaudio/video system may be connected to the interface hub via theaudio/video line output 4214. The audio/video line output 4214 mayprovide an analog audio/video signal that may be transmitted to theexternal audio/video system via a cable. Alternatively, switchingcircuitry may sense if a cable is not connected to the audio/video lineoutput 4214. When the switching circuitry senses no connected cable,audio/video content may be wirelessly provided over an antenna 190 usinga frequency modulation (FM) modulator 175.

The interface hub 110 may also include a power conversion unit 4606 thatreceives a voltage (e.g., a DC voltage) from an external power source4610 through the secondary input connector 4402. The external powersource 4610 may be a cigarette lighter power source, a hardwired vehiclepower source, a battery, or other power source. The power conversionunit 4606 may convert the received voltage to a suitable voltage for useby other components in the interface hub 110 and connected to theinterface hub 110. In addition, the received voltage may be converted toother suitable voltages for powering the supplemental media device 170,the expansion device 4604, and/or the main control module 105.Rechargeable batteries in the supplemental media device 170, theexpansion device 4604, and/or the main control module 105 may also becharged with the other suitable voltages provided by the powerconversion unit 4606.

FIG. 47 is a block diagram of the external input module 115 connectedwith a main control module 105. The input module 115 may be wired orwirelessly in communication with the main control module 105. In thisexample, the input module 115 may include a rotatable control 4702, andbuttons 4706, 4708, 4710, 4712, and 4714 for receiving user input. Moreor less controls may be included on the input module 115. The rotatablecontrol 4702 may be ring-shaped and disposed on the outer portion of theinput module 115 for rotational movement about a center axis 430, asshown in FIGS. 4 and 5, for example. The rotatable control 4702 may alsobe other shapes (e.g., polygons such as triangles, rectangles, oroctagons) that allow rotational movement about an axis. A potentiometer4704 may detect an angular position and a rate of change of therotatable control 4702. The potentiometer 4704 may provide an analog ordigital signal signifying the angular position and the rate of change ofthe rotatable control 4702 to a controller 4716. Alternatively, thecontroller 4716 may receive angular position updates over time andcalculate the rate of change. The controller 4716 may convert theangular position to a rotational movement 4722 that is provided to thecentral processor 120 of the main control module 105. The rotationalmovement 4722 may be stored in a memory 4720 of the main control module105, and include the angular position 4724 and the rate of change 4726.

The rotatable control 4702 may correspond to radially arranged userinterface elements, for example, as in the layout 600 and plurality ofbuttons 605 shown in FIGS. 6-12, on a graphical user interface displayedon a screen of the main control module 105. The radially arranged userinterface elements may include corresponding visual indicia 610, such asalphanumeric characters, that may be used to identify a functionassociated with the user interface element.

When the rotatable control 4702 is rotated, the controller 4716 analyzesthe rotational movement against a selected user interface mapping 4756stored in a mapping database 4718 of the main control module 105. Theuser interface mapping may include an angular transition threshold thatspecifies an angular amount that will result in changing a highlightingor selection from the currently highlighted or selected user interfaceelement to a subsequent (e.g., immediately adjacent) radially arrangeduser interface element on the screen in the direction of the rotation.For example, an angular transition threshold may specify that fivedegrees of rotational movement of the rotatable control 4702 changeshighlighting or selection from a presently highlighted or selected userinterface element to a neighboring user interface element. Other integerand non-integer angular transition thresholds may be specified.

The mapping database 4718 may include multiple user interface mappingsand angular transition thresholds specific to multiple screens of anapplication, and/or for multiple applications of the main control module105. The multiple user interface mappings and angular transitionthresholds may vary depending on the number of user interface elementspresent on a particular screen. The angular transition threshold maycorrespond to the actual angular positioning of user interface elementson the screen.

Turning briefly to FIG. 49, an example user interface 4900 is shown withsix user interface elements 4902, 4904, 4906, 4908, 4910, and 4912radially arranged at increments of 60 degrees around an axis 4914. Inthis example, the angular transition threshold may be 60 degrees. Asanother example, for elements radially arranged at 0 degrees (element0), 45 degrees (element 1), 135 degrees (element 2), and 270 degrees(element 3), the angular transition threshold may vary from element toelement: 45 degrees (from element 0 to element 1), 90 degrees (fromelement 1 to element 2), 135 degrees (from element 2 to element 3), and90 degrees (circularly returning from element 3 to element 0).Similarly, the angular transition threshold may be −90 degrees to movefrom element 0 to element 3, and so on. A separate scaling factor mayalso be applied to increase or decrease the angular transitionthreshold. For example, the scaling factor may be chosen such that apredetermined maximum (e.g., 5) degree of controller 115 movement isalways sufficient to change to the next user interface element. If 5degrees is the maximum, then in the example above where the angulartransition threshold was 60 degrees, the scaling factor would be 12.Thus, angular transition threshold may vary from element to element,from screen to screen, or from application to application.

The multiple user interface mappings and angular transition thresholdsmay be constant and/or customizable for the multiple screens andmultiple applications. For example, a user interface may accept angulartransition selection parameters, including a scaling factor. The systemmay then store the custom parameters in the memory 4720.

When an application is initiated, the user interface mappings andangular transition thresholds specific to the application may be loadedfrom the mapping database 4718 to the memory 4720. For example, a firstapplication 4728 may include user interface mappings and angulartransition thresholds for multiple application screens such as screen 14730 to screen N 4736. Other parameters for the application and screensmay be included in the memory 4720. Each screen 4730 and 4736 mayinclude an angular transition threshold 4732 and 4738, and userinterface element data 4734 and 4740, respectively. The angulartransition threshold 4732 and 4738 specifies the angular rotationalmovement that causes the controller 4716 to change highlighting orselection from one user interface element to a neighboring radiallyarranged user interface element in the direction of rotation for theparticular screen 4730 and 4736. The user interface element data 4734and 4740 may include the radially arranged user interface elements 605and corresponding visual indicia 610 for the particular screen 4730 and4736. Similarly, an application N 4742 may include screen 1 4744 toscreen N 4750 that may each include an angular transition threshold 4746and 4752, and user interface element data 4748 and 4754, respectively.

The central processor 120 may use the user interface element data 4734,4740, 4748, and 4754 in the memory 4720 to render a particular screen ofa particular application. The central processor 120 may use the angularposition 4724, the rate of change 4726, and the angular transitionthresholds 4732, 4738, 4746, and 4752 in the memory 4720 to determine,for a particular screen and/or application, when to change highlightingfrom a particular radially arranged user interface element to aneighboring radially arranged user interface element in the direction ofthe rotational movement. The change in highlighting may occur when thedetected rotational movement of the rotatable control 4702 exceeds theangular transition threshold 4732, 4738, 4736, and 4752 for a particularscreen and/or application.

The controller 4716 may also detect actuation of the buttons 4706, 4708,4710, 4712, and 4714. The button 4706 may be used for selection of ahighlighted user interface element on the screen, and the buttons 4708,4710, 4712, and 4714 may be used to activate various predeterminedfunctions (e.g., play, stop, pause, track forward, track back, volumeup/down, power on/off, or other functions). The buttons 4706, 4708,4710, 4712, and 4714 may be disposed as shown in FIGS. 4 and 5, forexample, in the center 440, top 425, bottom 427, left 428, and right 426portions of the input module, respectively. The location and orientationof the function buttons 4708, 4710, 4712, and 4714 may correspond tofunction user interface elements disposed on a screen of the graphicaluser interface. Thus, referring back to FIG. 49, the user interface mayinclude an actuable element 4916 at the top of the user interface thatmaps to the top button 4708, an actuable element 4918 at the bottom ofthe user interface that maps to the bottom button 4710, an actuableelement 4920 on the right side of the user interface that maps to theright button 4714, and an actuable element 4922 on the left side of theuser interface that maps to the left button 4712. For example, referringto FIGS. 6-12, the top button 4708 may activate a function relating tothe title bar 620; the bottom button 4710 may activate a functionrelating to the region 635, such as toggling between activeapplications; the left button 4712 may activate a prior screen function625; and the right button 4714 may activate a source menu function 630.The buttons 4708, 4710, 4712, and 4714 may also activate secondary andtertiary functions.

The user interfaces thereby have a close correspondence to the physicaldesign and arrangement of the hardware that controls the user interface,as shown, for example in FIG. 49. Specifically, the radial arrangementof user interface elements matches the physical design of the rotatablecontrol 4702, while specific user interface buttons (or other elements)on the screen match the physical layout of the buttons 4708-4714. Oneresult is that the system delivers a more intuitive, easy to operateexperience. Another beneficial result is that the operator more quicklylearns how to navigate and manipulate the user interface to achieveddesired results.

FIG. 48 is an exemplary process of controlling the main control module105 using the external input module 115. The central processor 120determines and initiates an executable application (4802). A user maybegin a navigation application or a media application on the maincontrol module 105, for example. After determination and initiation ofthe application, the central processor 120 loads a mapping for aninitial screen of the application (4804). The mapping may include userinterface element data, an angular transition threshold, and otherparameters. The user interface element data may include the radiallyarranged user interface elements and corresponding visual indicia forthe particular screen. The angular transition threshold may specify anangular amount a rotational movement of a rotatable control on theexternal input module that causes the controller 4716 to change ahighlighting or selection from one user interface element to aneighboring radially arranged user interface element in the direction ofrotation on the screen.

The central processor 120 may determine whether the user or anapplication has initiated a new screen (4806). A new screen may beinitiated if a user selects a submenu, recalls a list of information, orperforms other functions within the application, for example. If a newscreen has been initiated, then the central processor 120 loads amapping for the new screen (4804). If a new screen has not beeninitiated, then the controller 4716 may obtain a potentiometer readingsignifying the angular position and rate of change of the rotatablecontrol (4808). For example, a user may rotate the rotatable control4702 in a clockwise or counterclockwise direction, and the angularposition and rate of change of the rotatable control 4702 may bedetected by the potentiometer 4704. The rotatable control 4702 maycorrespond to radially arranged user interface elements, for example, asin the layout 600 and plurality of buttons 605 shown in FIGS. 6-12, on agraphical user interface displayed on a screen of the main controlmodule 105.

The controller 4716 may convert the potentiometer reading to arotational movement (4810). The rotational movement may be stored in amemory of the main control module, and include the angular position andthe rate of change. The central processor 120 may compare the rotationalmovement to the loaded angular transition threshold for the activescreen and/or application (4812). If the rotational movement exceeds theangular transition threshold, then the central processor 120 maydetermine a subsequent user interface element (4814). For example, ifthe angular transition threshold for the active screen is five degrees,then the central process 120 may determine a subsequent user interfaceelement when a rotational movement of the rotatable control exceeds fivedegrees. The subsequent user interface element may neighbor the currentuser interface element in the direction of the rotational movement.

The central processor 120 may highlight the subsequent user interfaceelement on the screen (4816). The central processor 120 may thendetermine whether a new application has been activated (4818). Thecentral processor 120 may also determine whether a new application hasbeen activated (4818) if the rotational movement does not exceed theangular transition threshold (4812). A new application may be activatedby the user or the currently active application. For example, a user mayactivate a media application when a navigation application is currentlyactive so that both applications would be running simultaneously. If anew application has been activated, then the central processor 120determines and initiates the new application (4802). If a newapplication has not been activated, then the central processordetermines whether a new screen of the currently active application hasbeen initiated (4806).

While various embodiments of the invention have been described, it willbe apparent to those of ordinary skill in the art that many moreembodiments and implementations are possible within the scope of theinvention. Accordingly, the invention is not to be restricted except inlight of the attached claims and their equivalents.

1. A user interface system, comprising: a processor; and a memory incommunication with the processor, the memory comprising processorexecutable instructions configured to direct the processor to performoperations comprising detecting an angular position and a rate of changeof a rotatable control of an input device; converting the angularposition and the rate of change to a rotational movement; analyzing therotational movement against a user interface mapping comprising a userinterface element angular transition threshold for radially arranginguser interface elements on a first graphical user interface, where theuser interface system includes multiple interface mappings and multipleangular transition thresholds, and wherein a scaling factor is chosensuch that a predetermined maximum degree of movement of the rotatablecontrol is multiplied by the scaling factor to obtain one of themultiple angular transition thresholds; determining whether therotational movement exceeds the angular transition threshold; anddirecting, when the rotational movement exceeds the angular transitionthreshold, a display device to change highlighting on the firstgraphical user interface from a first radially arranged user interfaceelement to a subsequent radially arranged user interface element in thedirection of the rotational movement.
 2. The system of claim 1, wherethe memory further comprises a mapping database comprising the userinterface mapping and further comprising the multiple user interfacemappings for multiple screens of a graphical user interface.
 3. Thesystem of claim 1, where the scaling factor is set such that the angulartransition threshold is reduced which requires less rotational movementor is increased which requires more rotational movement.
 4. The systemof claim 2, where the mapping database further comprises multiple userinterface mappings for multiple executable applications that eachcomprises a different graphical user interface.
 5. The system of claim 1where the angular transition thresholds and scaling factor for each ofthe graphical user interfaces is customizable.
 6. The system of claim 1,where the input device comprises a rotatable ring that may be rotated toprovide angular position information.
 7. The system of claim 1, wherethe instructions are configured to direct the processor to performfurther operations comprising: detecting an activation of a selectionbutton on the input device; and initiating processing corresponding to ahighlighted user interface element in response to the activation of theselection button.
 8. The system of claim 1, where the instructions areconfigured to direct the processor to perform further operationscomprising: detecting an activation of a function button on the inputdevice; and performing a predetermined function in response to theactivation of the function button.
 9. The system of claim 8, where thefunction button corresponds to a function user interface element of thefirst graphical user interface, the function user interface elementdisposed on at a similar location and orientation as the function buttonon the input device.
 10. A non-transitory computer readable mediumcomprising processor executable instructions for controlling a userinterface system for displaying one of a plurality of screens, theprocessor executable instructions configured to cause a processor toperform operations comprising: identifying one of the plurality ofscreens for display; detecting an angular position and a rate of changeof a rotatable control of an input device; converting the angularposition and the rate of change to a rotational movement; receiving aplurality of user interface mappings from a mapping database, where eachof the user interface mappings includes an angular transition thresholdfor each of the plurality of screens, where each of the plurality ofscreens includes radially arranged user interface elements on agraphical user interface, wherein the identified screen includes a firstradially arranged user interface element and a subsequent radiallyarranged user interface element, analyzing the rotational movementagainst one of the user interface mappings for the identified screen;modifying the angular transition threshold using a scaling factor chosensuch that a predetermined maximum degree of movement of the rotatablecontrol is multiplied by the scaling factor to obtain the modifiedangular transition threshold; determining whether the rotationalmovement exceeds the modified angular transition threshold; anddirecting, when the rotational movement exceeds the modified angulartransition threshold, a display device to change highlighting from thefirst radially arranged user interface element to the subsequentradially arranged user interface element in the direction of therotational movement in the identified screen.
 11. The computer readablemedium of claim 10, where the processor is coupled with the mappingdatabase which stores the plurality of screens of the graphical userinterface.
 12. The computer readable medium of claim 11, where themapping database further comprises the angular transition threshold andthe scaling factor.
 13. The computer readable medium of claim 11, wherethe mapping database further comprises multiple user interface mappingsfor multiple executable applications.
 14. The computer readable mediumof claim 11, where the mapping database further comprises multipleangular transition thresholds and multiple scaling factors for multipleexecutable applications, where each of the executable applications isassociated with one of the plurality screens.
 15. The computer readablemedium of claim 10, where the input device comprises a rotatable ringthat may be rotated to provide angular position information.
 16. Thecomputer readable medium of claim 10, where the processor executableinstructions are configured to cause the processor to perform furtheroperations comprising: detecting and activation of a selection button onthe input device; and initiating processing corresponding to ahighlighted user interface element on the identified screen in responseto the activation of the selection button.
 17. The computer readablemedium of claim 10, where the scaling factor is set such that theangular transition threshold is reduced for increased sensitivity of theinput device or is increased for reduced sensitivity of the inputdevice, where the sensitivity reflects an amount of the rotationalmovement.
 18. The computer readable medium of claim 10, where theprocessor executable instructions are configured to cause the processorto perform further operations comprising: detecting an activation of afunction button on the input device, where the function buttoncorresponds to a function user interface element on the identifiedscreen of the graphical user interface, the function user interfaceelement disposed on the identified screen at a similar location andorientation as the function button on the input device.